@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@W!( L(1   Y I`  d  Ld M * @  $ % CC$$)d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}L= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H  }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G} C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK}.COMLu L1 L ;LHL  T`  `8  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}DEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D8:MEM.SAV J y08 B|DEHI$} V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%} VY8 B V  @  /DE `E:D8:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}LLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}I|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu } 3E:}DISK OPERATING SYSTEM II VERSION COPYRIGHT 1984 ATARI CORP.A. DISK DIRECTORY I. FORMAT DISKB. RUN CARTRIDG *}E J. DUPLICATE DISKC. COPY FILE K. BINARY SAVED. DELETE FILE(S) L. BINARY LOADE. RENAME FILE M. RUN AT ADDRES +}SF. LOCK FILE N. CREATE MEM.SAVG. UNLOCK FILE O. DUPLICATE FILEH. WRITE DOS FILES P. FORMAT SINGLEL !N' ,}#"&))9(&*)/h)''-&؆莟R'S  vL/ˢ L }Insert DOS 2.0s, type Y Λx  -}DEfHI 1莏#q! @ y0ɛ8A0,' ȅ 1 1ild! 1L!NO SUCH ITEMSELECT .} ITEM OR FOR MENU! 0 .z:*{}.|{ 1 0 0JB 18L%|DL /}%DIRECTORY--SEARCH SPEC,LIST FILE?[# 0 0 &|D3" 1L!NOT A DISK FILEN !B 1L!E# 1 !BD 0}ED:}:1BJ|DE 1DEBHI 1 h0ߢ 0. 1}  0?詛 1 y0YЛ 1 ;#L" ;#L! BL1TYPE "Y" TO DELETE...DELETE FILE SPEC 2}COPY--FROM, TO?OPTION NOT ALLOWED DISKUTIL 081 COPYING---D1:DISKUTILMl# 0|D .L/%# 3}##JB|DE 1BHID#E 1#0: B 1L!#͑### B 1#c$0SY 4}S1}:## # # .#Ƚ# # 𩛙## 1,#PD#ELJ- <.BJD#E 5}1 1HH 0hh|DL%1}:̳# L% #D#EL% 1 0 . .0O% 1L!WILD CARDS NOT A 6}LLOWED IN DESTINATION 0 <.|K}N 2 FORMAT. t* 5) 1L!`) 0NΞ 0 L1) 1 L!BAD LOAD FILELOAD FROM WHAT FILE?) 0 ?}0#B 1L!WHAT FILE TO LOCK?) 0 0$B 1L!WHAT FILE TO UNLOCK?DUP DISK-SOURCE,DEST DRIVES?TYPE "Y" IF OK TO US @}E PROGRAM AREACAUTION: A "Y" INVALIDATES MEM.SAV.FE! +L1   `*  70 2 2 A} 0.* 1 y0 0)INSERT BOTH DISKS, TYPE RETURN^, 1 y038逍 N, 1L! , B}C, t*  Lx+, 0 ^, 1 y0 , ,0,0 ,L+ ,I0 ,Vǭ0 C}Ξ, 0 }, 1 y0C,ШC, 0K'!" H H 'h h Lx+!EF 5L1L!D,I,Hh D}` NOT ENOUGH ROOMINSERT SOURCE DISK,TYPE RETURNINSERT DESTINATION DISK,TYPE RETURN E}`  `8 rL1`-* 1P* 1 y0Y`hhL!NAME OF FILE TO MOVE?- 0 0|DL% <. F},^ 1 70 0 .@L# .BJ 1  DEHIB V L1 ,} 1 70,L.  G}JB|,#P#DE 1 HI BDEHHII 1 B 1 ,^ 1 70,0La- B V,#P H},^ 1 70 0L#L!-* 1P* 1 y0Yj383}mm ݭ I}}`8}``|* ? ɛ,`|:-)| / 1L!`DESTINATION CANT BE DO J}S.SYS0 0H{ 24Δ 28/L!/) 2 Π 2 0 ξ K}hAΞB,0 J 1 BDEHI,HÝDE 1HIHIDELSAVE-GIVE L}FILE,START,END(,INIT,RUN)O S0 1`BDEPHI V` S0H 1 L! M}0 0 1L~0`PLEASE TYPE 1 LETTER,0`hhL! 70 1L0L<1 ,;ɛ7,"ɛ:ݦ1ݥ N}A"D|ݤD|ȩ:|ȩ|ɛ,,(/+.ީ1 1,ɛ`轤{NAME O} TOO LONG B VL!` L1I H1EΝDL1|mDiE` V0`8d/8 i:222 1 L P}!ERROR- 165ɛ+,' 20*.. өr2 1``2TOO MANY DIGITSINVALID HEXA Q}DECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u R} ECIMAL PARAMETER800 0 8 00`,0'D800 H,ɛh`2L1NEED D1 THRU D8u $7 (c)1983 Action Computer Services  B JKIHiDiELV`L=$T} =$ BLV`$L$$l L$ &` Fj`8冨凪` $EӅӥU} $`ʆǪƩ Ɛee` $ƦʆǢ &Ɛeǐ % %L$ $'&&&8儨児V}祂*L$&&*ń8&&L$ [%`hihiHHȱȱL$c !#3`W}L$JJJJ`H $h`Hȩh r$L% {$L% %$L% -$L% 3$H8X}`HhHh _&L% BHI V䅠L% L& =$L%Ԇ ؠPIPP`Y} &P -$L% &L& &L& 'L&H- &8塪墨hL' 'L& &'L& &ȹP`Z}텠8堨塪 &芨Oȩ-`PP &P棩 Ѥģ0-ģ6000:,80H [}& &ehe&eģ0ʥ 8堅塅`$ &&*i0:0i &Ʀ`¢ 护\}°ڱ%ȱ%E &L`(担CS R&L`(I 'L`(H (L`( &L`( &B V %NLMȑ]}` MLN%B VL%S:)E:)H L& ) ) & L&h)0I))L&[\ZUVT` @)))^}` G)L& :)L& @)L&) ` G)L& &%` 0d $ҥ `2)2_}ҩ`҅`0)9*`@0)ӈJJJJ)`Ѕ`ȱ`` 5*ȥ`Hh`}ƣĢ`ƥĤ`Ѣ *`ȱѢĦ`膡`a}`ťƤe8夰L* Ƥ8`ŦeѠe桊L*O $ADb}:+ ]+DOT+x+ IF HEAD2(I)#32 THEN]+&+ SCOPYS(HEAD3,HEAD2,I,HEAD2(0))x++ SCOPY(HEAD2,HEAD3)+ + EXIT+ + FIc}+ +OD+ +RETURN+++++++*#,#PROC DLSETUP(); custom Day List+ 0,BYTE I#,B, GRAPHICS(0)0,V, DLd}IST=SDLST B,m,DLIST(3)=64+7 ;2V,,DLIST(6)=7 ;2m,, DLIST(10)=6,,DLIST(11)=6 ;1 ,,FOR I=14 TO 17 , e},DO,,DLIST(I)=6 , ,OD, ,R(N,-, --!-BYTE FUNC TITL(--N-&BYTE I,X,CRSINH=752,COL2=710,f}C(709,!-'u- COL0=708,COL3=711,COLLr-n-n-M+` L-j %*8J+K+K+J+ &%J+K+ L&L- D:FONT.SETg}- &}-|-|-}-L(. &~-L. L&`J+m|-K+m}-~- 5*|-й}-L- L&`3=234L6...0.h}/.0/.u0.L.2.Ȍ1...p.p.1.2.L|.I1.2.L`./.0.LB.`3,L. :)L. ˠҢ. ?& 3.`O7L..i}..L. D:DOC.000.Ɉ m.*(m.L. D:DOC.001.ȑ􈑮 m.*(m.L(/ D:DOC.002/ȑ mj}.*(m.LR/ D:DOC.003/ȑH m.*(m.L|/ D:DOC.004/ȑr m.*(m.L/ D:DOC.005/ȑ mk}.*(m.L/ D:DOC.006/ȑƈ m.*(m.L/ D:DOC.007/ȑ m.*(m.L$0 D:DOC.0080ȑ l}m.*(m.LN0 D:DOC.0090ȑD. m.*(m.ȱ, *`(L00M+0 . L&, &M+`RLm}0, z&- z&0,00ͮ0L1O0,I L1,0,-F *-F, *L10L00-+1+1ͮ0Lf1n}0-I L`1-0--F *-F- *Lf10L 1`Lk1 )1,0,,i,iG,i,i,i o},i,i ,ig1g1L1,mg1,ig1L1`LIL1 h1K+J+ p}[% 5*L=22< R& :)L^2 DISKUTILITIES2P R& :)Lv2 2q R& :)L2 2 R& :)L2 q} 2 R& :)L2 2 R&  :), R& :)- R& :)L83 r} 3 R& :)Ln3" for screen for printer 3K R& L&L3K:3} &@ s}&11IP 1ISL3 L&1`3 L333333 :)L4à3 R& L&L4K:t}4 & &33ILC4 L&3`33 :)Lm4 4Q R& L&`4 L4 Ȣ, N*Pu}+,P+L+L4+P F&`~48L+44~4L[5E8L+~444P+44I LU54L+55́4L5P4m4P+4v},4L484P+8L+4,+P F&,+P *P+i44`~4L4+P F&`Y=1Lo5i5i5j5L+55j5L5v &w}k5k5IL5L5k5j5P+j5L~58j5P+`G=1 L555 055IL55`55 l5 45O+N+ILI68O+LI65x} ͻ5L#6 &5L6O+ 355ILI6 L&5`TLx6 35} &5ILx6 L&5`L5 L&`ETy}L6 :)L6ҠӠԠ΢6 ?& 3.`EN CL6$6$6q-$p-$ - 06 06O+ 16 &6IPz}LT7N+PL+M+ L&L&7P:7# &dM+LQ7 & 6L7L7N+$L+ L&Li7E:7f & &{}6 566IL7 36L7L76IL7L7L76 ͽ6L7L7L7L7L6L66$6$``67f & &e888888ffffff~~`~~fl0fF>6xo~{>>888>|||f<}c6>8pp8?}w><~~~<||`x`~<~~<}0~0 ~ <~~<~~f~``~~f~~~``~~~f~~f~`~~~~f~~``~~ff8888<>>``f||f88<<w}wk~~fff~~ff~~~f~``~~f~~~```~`~~~~fff~~ff~<ckwf~<~fff~~~~~0~<~~<}~x|ngTTTTTT~f~``~~f~~~```~`~~~~fff~~ff~<ckwf~<~fff~~~~~0~<~~<$7 (c)1983 Action Computer Services  B JKIHiDiELV`L=$} =$ BLV`$L$$l L$ &` Fj`8冨凪` $EӅӥ} $`ʆǪƩ Ɛee` $ƦʆǢ &Ɛeǐ % %L$ $'&&&8儨児}祂*L$&&*ń8&&L$ [%`hihiHHȱȱL$c !#3`}L$JJJJ`H $h`Hȩh r$L% {$L% %$L% -$L% 3$H8}`HhHh _&L% BHI V䅠L% L& =$L%Ԇ ؠPIPP`} &P -$L% &L& &L& 'L&H- &8塪墨hL' 'L& &'L& &ȹP`}텠8堨塪 &芨Oȩ-`PP &P棩 Ѥģ0-ģ6000:,80H }& &ehe&eģ0ʥ 8堅塅`$ &&*i0:0i &Ʀ`¢ 护}°ڱ%ȱ%E &L`(担CS R&L`(I 'L`(H (L`( &L`( &B V %NLMȑ}` MLN%B VL%S:)E:)H L& ) ) & L&h)0I))L&[\ZUVT` @)))}` G)L& :)L& @)L&) ` G)L& &%` 0d $ҥ `2)2}ҩ`҅`0)9*`@0)ӈJJJJ)`Ѕ`ȱ`` 5*ȥ`Hh}ƣĢ`ƥĤ`Ѣ *`ȱѢĦ`膡`}`ťƤe8夰L* Ƥ8`ŦeѠe桊L*O $AD}:+ ]+DOT+x+ IF HEAD2(I)#32 THEN]+&+ SCOPYS(HEAD3,HEAD2,I,HEAD2(0))x++ SCOPY(HEAD2,HEAD3)+ + EXIT+ + FI}+ +OD+ +RETURN+++++++*#,#PROC DLSETUP(); custom Day List+ 0,BYTE I#,B, GRAPHICS(0)0,V, DL}IST=SDLST B,m,DLIST(3)=64+7 ;2V,,DLIST(6)=7 ;2m,, DLIST(10)=6,,DLIST(11)=6 ;1 ,,FOR I=14 TO 17 , },DO,,DLIST(I)=6 , ,OD, ,R(N,-, --!-BYTE FUNC TITL(--N-&BYTE I,X,CRSINH=752,COL2=710,}C(709,!-'u- COL0=708,COL3=711,COLLr-n-n-M+` L-j %*8J+K+K+J+ &%J+K+ L&L- D:FONT.SET}- &}-|-|-}-L(. &~-L. L&`J+m|-K+m}-~- 5*|-й}-L- L&`3=234L6...0.}/.0/.u0.L.2.Ȍ1...p.p.1.2.L|.I1.2.L`./.0.LB.`3,L. :)L. ˠҢ. ?& 3.`O7L..}..L. D:DOC.000.Ɉ m.*(m.L. D:DOC.001.ȑ􈑮 m.*(m.L(/ D:DOC.002/ȑ m}.*(m.LR/ D:DOC.003/ȑH m.*(m.L|/ D:DOC.004/ȑr m.*(m.L/ D:DOC.005/ȑ m}.*(m.L/ D:DOC.006/ȑƈ m.*(m.L/ D:DOC.007/ȑ m.*(m.L$0 D:DOC.0080ȑ }m.*(m.LN0 D:DOC.0090ȑD. m.*(m.ȱ, *`(L00M+0 . L&, &M+`RL}0, z&- z&0,00ͮ0L1O0,I L1,0,-F *-F, *L10L00-+1+1ͮ0Lf1}0-I L`1-0--F *-F- *Lf10L 1`Lk1 )1,0,,i,iG,i,i,i },i,i ,ig1g1L1,mg1,ig1L1`LIL1 h1K+J+ }[% 5*L=22< R& :)L^2 DISKUTILITIES2P R& :)Lv2 2q R& :)L2 2 R& :)L2 } 2 R& :)L2 2 R&  :), R& :)- R& :)L83 } 3 R& :)Ln3" for screen for printer 3K R& L&L3K:3} &@ }&11IP 1ISL3 L&1`3 L333333 :)L4à3 R& L&L4K:}4 & &33ILC4 L&3`33 :)Lm4 4Q R& L&`4 L4 Ȣ, N*P}+,P+L+L4+P F&`~48L+44~4L[5E8L+~444P+44I LU54L+55́4L5P4m4P+4},4L484P+8L+4,+P F&,+P *P+i44`~4L4+P F&`Y=1Lo5i5i5j5L+55j5L5v &}k5k5IL5L5k5j5P+j5L~58j5P+`G=1 L555 055IL55`55 l5 45O+N+ILI68O+LI65} ͻ5L#6 &5L6O+ 355ILI6 L&5`TLx6 35} &5ILx6 L&5`L5 L&`ET}L6 :)L6ҠӠԠ΢6 ?& 3.`EN CL6$6$6q-$p-$ - 06 06O+ 16 &6IP}LT7N+PL+M+ L&L&7P:7# &dM+LQ7 & 6L7L7N+$L+ L&Li7E:7f & &}6 566IL7 36L7L76IL7L7L76 ͽ6L7L7L7L7L6L66$6$``67f & &ePD Utilities in Dos 2.5 Les Wagar 5309 - 47 Avenue Red Deer, Alberta Canada T4N 3R1 } I N D E X AUTORUN.SYS Page 3 DISK } 2 DISKNAME 10 DISKUTIL 3 } FREEZAP 10 VTOCKEY 10=====================}==================ZAP 10 VTOCKEY 10=====================DISK UTILITIES by Les Wagar This disk is formatted in density (720 sectors). However, its sector }-sensitive utilities relate to both and density formats. The program side of this disk (Side One) boots } to a file named DISK. DISK is a "Hello" or "Menu" program, written in ATARI BASIC except for the BLINK subroutine. More us }er-friendly than booting to a blank screen, the DISK program also provides a number of useful functions, as described below. } For 130XE users, the file RAMDISK.COM is included on the disk, so that "D8:" is operational. 65XE or 800/800XL users s }hould rename or delete this file. The documentation side of this disk (Side Two) uses my adaptation of a documentation }program used by ANTIC for their Catalog disks. Ů }---------------------------------------DISK The DISK file as delivered has a short signature preamble which kick }s in only at disk boot. These lines ( 4 to 9) should be removed when they become annoying. On booting the fil }e, the Drive 1 Directory is presented, with Drive # shown. Drive 1 is the Drive. You may change this on } of the program by changing the value of (in the statement P=1) to your choice, OR you can eliminate the boot default a }ltogether by changing the last DATA figure on to 0 (from its current 1). Beneath the Directory are the command }s: UN OAD OS

RINT EW VER UITwith their first letters blinking. The BLINK subroutine } is my adaptation of a M/L routine published in COMPUTE'S THIRD BOOK OF ATARI. Pressing UN, you will be presented wi }th the input request " FILENAME ?". Enter just the filename. The program seeks that file from the Drive shown in the Hea }der. To select a file from any other Drive, first change the Drive Header by pressing EW, then responding to the Input qu }ery. NOTE: if you respond to the Input query with a only, Drive 1 is selected. Pressing OAD, the FIL }ENAME will be requested, same procedure as above. Pressing OS, the program goes to DOS (130XE owners will not need t }o change disks or drives to raise the DOS file).

RINT needs a little more explanation. This command allows you to p }rint out a directory listing, in any number of columns from 1 to 6. The printer codes are on , and are set here for }the EPSON LX80 in condensed/double strike--as illustrated by the label on the envelope of this disk. If your printout is to }be a disk envelope label, your maximum choice is 4 columns. The usual title printed is "DIRECTORY"--but the print string on } can be changed to whatever you like, as this disk envelope illustrates. The EW command, which we have alrea }dy mentioned, is used to change Drives or to renew the Directory after a disk change. The VER command will shift the } Command Line over to the next Command Page without changing the directory display. See below. By pressing UIT or, m }ore simply, hitting , the program ENDS, and the BLINK is turned off. A NOTE: if you from the program, all i }nverse characters will continue to blink, as will any program you load or run while that routine is still left intact in the }computer. On pressing VER you are presented with the next command line: OCK NLOCK ENAME < }D>ELETE EW VER The EW and VER commands are repeated from the former command page. Pressing VER will ret }urn you to the former command page without changing the directory. Pressing here will do the same as VER, so tha }t pressing twice here is the same as UIT. Pressing OCK, NLOCK, ENAME, or ELETE will be followed } by a filename input request, as before. However, unlike the procedure in the DOS menu, a file here does not need to be unlo }cked before renaming or deleting it--so be careful. In addition, the new name of a renamed file will be locked automatically }, whether its former filename was or not. LOCK, UNLOCK, and DELETE will work with the "wildcard" <*> as usual.---------- }-----------------------------AUTORUN.SYS (Sides One and Two) The AUTORUN.SYS file on Side One was made with AUTOMAT }E, a program published in COMPUTE'S THIRD BOOK OF ATARI. The AUTORUN.SYS file on Side Two is the program which you used } or are now using for this printout, and is here by adaptation only, as previously noted. It is also recorded as the file DO }C.COM. It requires a companion file named FONT.SET, and will automatically chain up to ten DOC.00* files. The printer will }automatically WAIT for a prompt before printing out the next page, so that either or feed is enabled-- }so watch out for the extra linefeed if you're on tractor. (I created these DOC files with Atariwriter formatted to the DOC.C }OM specs: L1, R79, T6, B12. The embedded codes for Expanded and Italic print are CTRL-N and CTRL-U.)formatted to the DOC.C g---------------------------------------DISKUTIL You've just deleted a file by mistake? DISKUTIL has the answer. Y$}ou've a file that won't run, and gives you a "file number mismatch" error? DISKUTIL to the rescue! Want to personalize your$} disks, add notation lines to your directory, trace files, find what deleted filenames are still in the directory, or change $}data in programs you can't list? DISKUTIL does all that, and more. At its core is a small, assembly language subroutin$}e for sector read- write. (I can't remember my source for this subroutine, and have failed to find it in several searches.) $} But other than these two DATA lines of assembly code, this versatile and powerful program is entirely BASIC. Unless indicat$}ed by a screen choice, file or sector input/output is limited to Drive One--no "D:" prefix needed. Choice of drives, includi$}ng Ramdisk is offered only where is is most needed: in the Restore, Datalift, and Directory Options. When you run the $}DISKUTIL program, you are first presented with the Main Menu: 1. Datacopy 2. Stylus 3.$} Filetrak 4. Restore 5. Datalift 6. Directory 7. Quit 1. Datacopy$} A program for reading, copying, and replicating sectors. It will copy sectors from one area of the disk to another, o$}r from one disk to another. Choose <1> in the Main Menu, and the Datacopy appears: 1. Read sectors $} 2. Viewcopy sectors 3. Copy sectors 4. Replicate 5. Main menu Choose$} " " and you get the prompt "READ SECTORS (a,b)?". Enter your choice, and the sectors will be displayed and sc$}rolled for easy viewing. To pause the scrolling, use <1>. When scrolling is com- plete, you will be asked if you w$}ish to return to Datacopy. A ES returns you to the Datacopy Menu; a sends you back to the Main Menu. Choos$}e " " and you are given the prompt "COPY SECTORS (a,b) ?". Enter your choice, and the sectors will be dis$}played as they are being read, flipping over one at a time in the "FROM:" viewframe so that you can confirm what you are goin$}g to copy. When that is complete, you will be given the prompt "TO WHAT SECTORS (c,d) ?". IF YOUR DESTINATION DISK IS NOT $}THE DISK YOU HAVE READ FROM, YOU CHANGE DISKS AT THIS POINT. If you decide not to proceed with copying, hit at this$} point, and you will be returned to the Datacopy Menu. Otherwise, make your choice, and the chosen sectors will be displayed$} as they are being written, flipping over one at a time in the "TO:" viewframe. When copying is complete, you will again be $}given the choice of returning to either the Datacopy Menu or the Main Menu. Sectors which include data will no$}t display neatly within the viewframe, so will not be fully erased when the next sector is displayed. If this occurs, BREAK $}the program, and go to Datacopy Option " ". Copying here is the same as the former except that the sectors are$} not displayed as they are being read or written, and the routine runs faster. " " is a copy program also, e$}xcept that only one sector is read, which is then repeatedly copied into any number of sectors as specified. This procedure $}can be used, for instance, to re-format a number of sectors. The copy programs will not overwrite a VTOC or Directory s$}ector (360-368 or 1024) without first doublechecking to make sure you know where you are. 2. Stylus A program f$}or revising, personalizing, or creating sectors. Choose <2> in the Main Menu, and the Stylus Menu appears: 1.$} Read sectors 2. Add directory note 3. Signature sector 4. Revise sector $} 5. Copy sector 6. Main menu First, a precautionary note: IF IN DOUBT ABOUT A SECTOR CHANGE YOU $}WANT TO MAKE, FIRST USE " " TO MOVE A COPY OF THE ORIGINAL SECTOR TO A SAFE AREA OF THE DISK SO THAT YOU CAN MOV$}E IT BACK IF YOUR CHANGE DOESN'T WORK. The " " option here is the same as the one in Datacopy, and is pro$}vided here just to have it handy. The " " option is not the same as the one in Datacopy. It is designed t$}o copy only one sector at a time, and to give a preview of the destination sector before writing to it. I use " %} " to insert titles, signatures, or revision data in the Directory (Sectors 361-368). It can be used to add a si%}ngle line of anything you want. The number of sectors can be made to read anything you want--up to 999---but the actual numb%}er of sectors used, as recorded in VTOC (Sectors 360 and 1024), will always be zero, and addressed to Sector 3. (NOTE: if y%}ou wish to insert a title, number, or signature at the top of a disk directory, the first bytes of Sector 361, either the dis%}k should be newly formatted, or any existing file in that position will have to be moved, and the original filename(s) delete%}d.) When you choose this option, you are first asked for the number of the sector on which to write. Assuming that you%} have already used the Read Option to determine which sector, enter your choice. The screen will then display that sector, a%}nd ask you to confirm it. A takes you back to the Menu; a ES brings up the prompt for your input notation. The %}allowable space for your entry is clearly marked. After entry, you are then asked if you wish to display a number in the sec% }tor count--default is 000, if all you do is hit . After entry, you are then shown how your notation will look, and a% }re given the choice of continuing, or returning to revise it. Choose (Y)es for continuing, and, if sector space is available% } for it, the note will be written to the disk, and the revised sector displayed for your viewing. If you don't like what you% } see when the result is displayed, don't panic. Nothing is hurt except your self-esteem, and Option "4. Revise sector" will % }repair even that. I use " " to bury an identification on the disk. Look at Sector 3 or Sector 720 fo%}r an example. (NOTE: Sector 3 is an FMS Sector, reserved when DOS formats the disk, but though it is left full of impressiv%}e- looking data, it doesn't seem to do anything. It is my usual Sector address for dummy filenames, so I customize it.) If %}in doubt about writing to a sector, use Stylus Option 5 to store a copy of it to a safe sector before you customize the origi%}nal out of existence. The setup for a Signature Sector is on of the DISKUTIL program. Change the name to whatever %}you like. Option " " is the major Stylus program, and takes a little practise. A knowledge of disk and %}sector structure helps, but the program can be quickly put to use by careful observation and experiment. With the Read Secto%}rs Option, look at Sector 368 and Sectors 706-720 to see examples of what the Revise Option is able to do easily. It has oth%}er uses, of course. For instance, Revise provides the only easy way to dummy, notation, deleted, or zapped filenames.%} Also, if you don't program in Assembly, changes are sometimes possible in untouchable M/L programs with this option. %}TO GET ACQUAINTED WITH OPTION 4, LET'S TAKE A TRIAL RUN. After choosing <4> you are asked what sector you want to change. L%}et's say Sector 700: we can't hurt anything there; it's presently unused. Now the program shows you the current Sector 700-%}-128 hearts in 4 rows, the CHR$ look of a formatted sector--and asks "Are you sure?". If you aren't, hit and you're%} back in the Stylus Menu. But say ES, and you are given the : 1. Format %} 2. Modify 3. Write 4. Menu Choosing " " here will send you back to t%}he Stylus Menu. So let's choose " ". The sub-menu is replaced with the write-screen, and a little arrow is pointing %}where to start. Let's see what happens if we don't want to start. Hit . A flight of arrows wipes out the WRITE tit%}le, and you are asked "Save to disk Y/N ?". It won't hurt anything if we say ES, but let's put it off. Hit . T%}he write-screen disappears, and we're back in the sub-menu. Choose " " again. This time we'll try something. Hold t% }he down for a couple of rows, then the till you run off the write-screen entirely. But you can't run off! As soon a%!}s you pass the bottom right corner, a flight of arrows wipes out the title again, and you're asked whether or not you want to%"} save your creation. Say O. We're back in the sub-menu. Choose " " again, and the edited sector full of BBBVVV's%#} reappears. This time let's move around a bit before we start. Holding down use the for 5 spaces, a%$}nd the for 1 space, then try carving out space in the middle with the . Finished? Now, how do w%%}e get out? Six ways of doing it. With held down, any will bring you out correctly as soon as you cros%&}s an edge of the write-screen. Or run out the bottom with your row of s, or go the easy way, and just hit . When%'} the flight of arrows leaves you with the question this time, let's say ES to saving our creation. Now the write- screen %(}disappears, the Drive light goes on, and a new Sector 720 is displayed. Now you are asked if you want to go back to Stylus a%)}gain. Say ES, and go back to bring up Sector 700 in Option 4 again. But Sector 700 is a mess now, so let's put it back t%*}o normal. Choose " " in the sub-menu, follow through, and a newly-formatted Sector 700 will appear. To see wha%+}t the Write Option do, use Stylus Option 1 to read Sectors 706-720. These designs were all created on the write-screen. %,} When scrolling is complete, and the prompt asks where you want to return, try something else this time. Go back to the Main%-} Menu, choose DATACOPY, then Datacopy Option "2. Viewcopy sectors". Ask for Sectors 712-716, but when asked where to copy th%.}em to, hit instead. Now write: PRINT T$ . Does that display give you any ideas? Now go back to %/} . Ask for Sector 363, then " " from the sub-menu. The Modify Option is the trickiest to use because it ex%0}pects you to know something about the structure of the sector you are looking at, and this varies with different kinds of sec%1}tor. Sector 363, which you are now looking at, is a Directory Sector. In it are the last 2 active files in the Directory (D%2}ENSITY and DISK), 3 dummy files (the two hyphen lines and the revision note), and 1 deleted file (TRYOUT). Byte 0 of each fi%3}le is the LOCKED, UNLOCKED, OR DELETED flag. Bytes 1-2 of each file are the LSB/MSB (least significant byte/most significant%4} byte) stating how many sectors are in the file. Bytes 3-4 of each file are the LSB/MSB stating at what sector the file begi%5}ns. But of course the display is all in CHR$, not decimal, so you will have to decipher what you are seeing. A "heart" is C%6}HR$(ASC(0))--meaning zero--so the two hearts in bytes 1-2 of the Revision Note file tells you that this file is taking up zer%7}o sectors of space. The CHR$(ASC(67)) in byte 3, plus the "heart" (zero) in byte 4, tells you that the address of this non- %8}existent file is Sector 3--which DOS does not use for files, so now you know for sure that you are looking at a dummy file.%9} So let's MODIFY. If you change byte 0 of the deleted file (TRYOUT) to "B" you will have a file which the Directory list%:}s as UNLOCKED. If you change byte 0 to "b" you will have a file which lists as LOCKED. If you are in enhanced density, and %;}change byte 0 to "#" you will have a file which the Directory will list as LOCKED with a brace around it. If in enhanced den%<}sity and you change byte 0 to CHR$(ASC(67))-- on the keyboard--you will have a file which lists as UNLOCKED with %=}a brace around it. Try any of these, and check what you've done by going back to the Main Menu for the Directory. Now go on%>}e step further. Change byte 1 of this file (TRYOUT) to read CHR$(ASC(65)) -- on the keyboard--repeat it in byte %?}2, save to disk, and again check the Directory. You have a file 257 sectors long, right? Well, not quite. The file sa%@}ys it has 257 sectors, but the VTOC (Volume Table of Contents) still says "357 FREE SECTORS." To change the VTOC you'd have %A}to save the file, which you can't; or change the VTOC, which maybe you can if you're a graduate hacker; or else make the file%B} a deleted file again so you can RESTORE it ( ), which you could if the file was restorable, which this time it i%C}sn't. So let's not leave an untabulated active file in the Directory. You can wipe it out by overwriting its Directory%D} record with "hearts" ( ) or by revising byte 0 to say "deleted" again ().ts Directory$q 3. Filetrak This is a program to trace or read files, including any deleted or zapped files. Choose <3> in the M)F}ain Menu, and the Filetrak Menu appears: 1. Read a file 2. Trace a file )G} 3. List deleted 4. Global index 5. Global trace 6. Main m)H}enu The " " option displays files as tokenized, without trans- lating them. Since LISTed or TEXT files ar)I}e the only files not tokenized, these will be the only files displayed in plain English. If deleted or zapped filenames stil)J}l appear in the Directory, these files will also be read--which may prove useful if you're trying to Restore a file. In this)K} option, the file trace is displayed before listings are presented, but is done here mainly to show the program working. Tra)L}cing is better displayed in the Trace Option. Tracing a file may take up to four passes: each PASS will be traced, and the )M}number of the PASS noted if more than one needs to be made. This information will be needed when you come to the Restore Opt)N}ion. Inputting the filename needs special comment. Files can only be read from Drive 1. Do not use the "D:" prefix. )O}File search will respond to the typical filename input such as "RAMDISK.COM"--but will not respond to a wildcard (*) entry, s)P}ince it has its own way of shortcutting. RAMDISK.COM, for instance, can also be found with the entry "RAMDISK", "RAM", or ev)Q}en "R". The " " option is your best choice to view a trace: it scrolls the trace by sector number as it )R}proceeds. If the file you want is DELETED or ZAPPED, as long as the name is still in the Directory this file- search will fi)S}nd it, and tell you it is looking at a DELETED or ZAPPED file before the trace begins. When the trace is finished in this ca)T}se, the program will also tell you if it thinks the file can be restored. If the program does say "MAY RESTORE ON PASS ()U}#)", check out the data in each PASS, using the "1. Read a file" Option. Sometimes you may still find some of the missing fi)V}le. As a demo of a useless trace, try tracing the deleted file IMPASSABLE on this disk. If you check out the data covered b)W}y these four PASSes, you will find that IMPASSABLE has been wiped. If you trace the deleted file IMPASSE, however, you will )X}find that this file can be restored. Now look for a file called SUCH. Though it shows as a file, its Directory infor)Y}mation in Sector 362 should tell you it's another way to make a dummy file. The " " option will give you )Z}a listing of all deleted or zapped files still recorded in the Directory. List the deleted on this disk, and you will discov)[}er another use for the Modify Option in Stylus. The " " Option is another helpful feature--nearly everyth)\}ing you ever wanted your Directory to tell you, but didn't. On choosing this option, you are presented with the full Directo)]}ry picture. You will be shown all files, each clearly marked as , , or , plus how many sectors for each, )^}and the sector start address. It will also tell you whether or not the file looks good--an "ERR" notation beside a filename )_}says this file won't boot. Both Global Options do a sector count of all active files. If this count does not agree wit)`}h VTOC's "free sector" count, the number of "free sectors" which is shown at the bottom of this display will also show an "ER)a}R" notation. The discrepancy usually means that you have a zapped file (which will also show an "ERR"), but mean that VT)b}OC is just mixed up. If it's a zap problem, the easiest solution is to ignore the count discrepancy. Otherwise, short of ha)c}ving a program to update VTOCs (such as DISKEY by Sparky Starks, a commercial program, or VTOCKEY by me, elsewhere on this di)d}sk) the only solution is to copy all files to another disk, and re-format. The " " Option presents the sa)e}me kind of display as the former, but takes a good deal longer to do it. Here, each file is traced, and the directory data c)f}hecked, before its data and status are put on the screen. This procedure, of course, provides the more accurate picture. )g} 4. Restore This program will restore deleted or zapped files to active file status so you can LOAD, RUN, or ENTER )q}bDocuments bEpson Setupb%DOS SYSb*)DUP SYSb)SAUTORUN SYSb |FONT SETb)DOC COMbDOC 000b)DOC 001biDOC 002bSEDOC 003b6DOC 004bRev02/07/92them again. It cannot be expected to deliver what you ask if the original file data has already been overwritten by a subseq)r}uent disk entry. In the case of a filename which has disappeared, but whose data is still on the disk, RESTORE will work if )s}you can first re-install the filename as a deleted file in its original place in the Directory--plus start address of data an)t}d sector count!--but use DATALIFT for this. Before using RESTORE for ed files, check the last two sectors of the fi)u}le for duplications of line numbers. If line numbers are repeated in the filler-data of the final sector, use Stylus Option )v}"4. Revise" to erase the duplicate numbers and data. Here again, the DATALIFT Option may prove easier, as long as you have c)w}onsecutive sectors. It will automatically print a listing to the screen after writing the disk, so that any repetition probl)x}ems in the last lines are immediately apparent. (See further in DATALIFT.) Choose <4> in the Main Menu, and you will b)y}e immediately asked "FILE TO BE RESTORED ?". As with Filetrak, filename input can be shorcut. If the filename found is not )z}the file you want, hit twice, bypassing the next entry, so as to abort the process, and try again. When your file i){}s found, you will be asked "WHICH DRIVE?". Default is Drive 1. If you have the Ramdisk (Drive 8), this should be the prefer)|}red choice if you don't want to overwrite the file you are restoring, or if you have doubts about the data you are restoring.)}} You will then be asked "WHICH PASS"--asking for the number of the PASS which Filetrak indicated was the correct or best cho)~}ice. If you don't know, don't guess! Hit , go back to Filetrak, and find out the PASS with a file trace, at least. )} In the case of a DELETED file which does nothing else but show "trace error," there's not much hope for restoring it. In th)}e case of a ZAPPED file, chances are you will never get anything other than a "trace error"--but your chances for finding the)} data are much better. Choose the PASS which gives you the number of sectors you think the file should have. And you can al)}ways check the data with the "1. Read a file" Option. After you enter the PASS number, the filesearch begins, after which yo)}u will be asked to confirm the drive and file- name you are about to write. A aborts the writing. Answer es, an)}d the file is written, after which you are shown the Directory with the filename entered. Now the acid test: quit Diskutil,)} and see if your restored file will ENTER or RUN. 5. DATALIFT This program will give a filename to consecutive )}disk sectors not exceeding 120 per file. (For more sectors, use version in Filetrek program.) Its main use is for restoring )}files whose filenames have been erased or which register a file number mismatch error, but it give a filename and VTOC re)}spectability to sectors containing weird data or no data at all. If the necessary file data is not in consecutive sectors, f)}irst find sufficient space on the disk--or on another disk--and arrange them in order, using the DATACOPY Option, before goin)}g to DATALIFT. To get an idea of the power of DATALIFT, use it to assign Sectors 706-720 (if you're in single density) or 10)}26-1040 (if you're in enhanced) to a file in Drive 8 (the Ramdisk), then see if DOS will copy it. The file will never run, b)}ut it sure exists! DATALIFT can also be used instead of RESTORE for deleted files, especially if a change of the filena)}me is desired, or if the file in question is a LISTed file. In the case of LISTed file data, the last sector of data may inc)}lude filler which repeats the last line number(s), and whose presence will edit-out the originals. In RESTORE, this problem )}is overcome by using Stylus Option "4. Revise sector" to erase conflicting line-numbers before restoring. With DATALIFT, pre)}-erasure is not necessary. After it writes your new file to the disk, DATALIFT will print it to the screen for inspection. )}If a conflict in the last line numbers is seen at this time, leave the data on the screen, NEW the memory, ENTER the new file)} without listing it, edit-in the original line(s), and LIST the corrected version to disk. 6. DIRECTORY When yo)}u call for a Directory, you will be asked for a Drive #. If you just hit , the Drive 1 Directory is displayed. Belo)}w the display you are given the option of returning to Main Menu or getting a printout. The printer program will print in co)}ndensed mode and your choice of 1-6 columns, with the title "DIRECTORY" centred above the display. If your purpose is to mak)}e a disk envelope title, the number of columns cannot exceed four. To change the printer codes or the title--like the titles)} "SIDE ONE" and "SIDE TWO" on this disk envelope--the codes and title-string are on .----------------------------)}-----------DISKNAME A program for titling, numbering, and personalizing disks, usually done immediately after format)}ting. The first two files on either side of this disk could have been made with this program--except that I was in DISKUTIL )}at the time so I used the option. The files it makes are dummy files, so any sector-count information is not inc)}luded in VTOC's sector count. The signature-filename routine is on Line 105: change it to your own specs. Adding thes)}e files to a Directory which is already using the space takes a little reorganization. However, if that space is occupied by)} files which this program has put there, the program will overwrite them without objecting. Otherwise, the title-routine wil)}l tell you that an active file is using its space, and refuse to go on. When you are able to continue--having resolved that )}problem--still be careful. The follow-up signature-routine won't check its space--it only checks with you--before it writes )}itself in.ill be careful. The follow-up signature-routine won't check its space--it only checks with you--before it writes ( ---------------------------------------FREEZAP A program to change disks to read DIRECTORY FULL and 000 SECTORS FRE-}E. The screen display should be self-explanatory. The VTOC sectors of a zapped disk are stored in Sector 720 and (if e-}nhanced density) Sector 1025, and are restored to their original locations with the "" routine. The program won't let y-}ou make the error of zapping a disk you've already zapped--which would destroy the stored VTOC--but it cannot account for fil-}e deletions or filespace changes you may have made to a zapped disk. WARNING: Always unzap a FREEZAP'd disk before making f-}ile changes or deletions to that disk!---------------------------------------VTOCKEY A program for checking the -}validity of the VTOC, and rebuilding it if necessary. When you first try this program, be sure you have tucked away a copy o-}f the VTOC sectors you are going to work on. The program is written to keep you out of trouble--but it can't stop you if you-} insist. The program is not perfect: once in a while it may run into a rebuilding problem it can't solve. The menu is-} short: 1. Directory 2. VTOC check 3. VTOC fix -} 4. Quit The " " Option is here to give you a double-check on file and sector-count information. The-} " " Option is likely the one you will want to use most. It makes three separate counts of the "free sectors" in-}formation available on the disk. First, it displays the record as the VTOC records it. Then it displays the record by actua-}l count of the "free" bytes recorded in the key VTOC sector: Sector 360 if single density, Sector 1024 if enhanced density. -} Then it displays the count as the Directory sees it, by totalling the sectors used by each file. The program will make no c-}omment if the three counts agree. But if they disagree, it will say so, and if any ZAPPED files have been found it will stat-}e the filename and the manner of ZAP. With ZAPPED files present, these have to be restored or removed before going on to the-} Rebuild Option-- which means quit this program, and bring DISKUTIL to the rescue. The " " Option is for use -}when the counts disagree, and no other problems are apparent. Since it does not include a filetrace of what it is rebuilding-}, it is not self-checking: the user must do the necessary checking. Let's take two examples. Choose from the-} Menu, and you are asked to insert the target disk. Put in Side Two of this disk, hit , and sit back while the progr-}am shows you what it's doing. Now you have a screen full of information: a display of VTOC sector 360 as it is, and another-} display of VTOC Sector 360 as the program has rebuilt it. It not yet rewritten it, since you are now being asked whether or-} not you want to rewrite. To answer that, we'd better look the information over. We can safely ignore the count data displa-}yed here--it may be misleading. However, we must carefully compare the two displays. If we knew that the current VTOC was w-}rong, the rebuilt VTOC should show some differences. In this case, of course--unless you've already botched something--the t-}wo displays and the two counts should match. In this case, at least, whether you say ES or O to rewriting the sector w-}on't change anything except the mileage on your Disk Drive. But for the experience, say ES. Now you're asked if you-}'re sure. Say ES again. But here's another stopper. The program asks you to write the number of the sector you want wri-}tten! The reason is simple: if you're going to rewrite a VTOC sector, you'd better get your brain involved, not just your r-}eflexes. And if you have doubts, you can still complete the program, but tuck this revision away to a safe sector which can -}be copied to Sector 360 later. This is handy, because if you have not made a prior copy of this VTOC, here's a way of doing -}it in reverse without having to quit the program. So answer "720" this time. At this point, if you are in single densi-}ty, the program writes the sector, and ENDs here. If in enhanced density, the program writes the sector, clears the screen, -}and starts work on Sector 1024. When it's done, you are again asked whether you want to write the revision in --but we've re-}hearsed that sequence, so this time just hit to END. Now turn the disk over to Side One, and RUN the program i-}n Option 3 again. This time, the two Sector 360's do not resemble each other, though their "free sectors" statements are the-} same. THE DIFFERENCES SHOWN HERE ARE CRUCIAL IN LEARNING HOW TO USE VTOCKEY. The "active" VTOC display here is the true on-}e: the rebuilt display is only logically true--but diskwise quite wrong. If you were to write this VTOC to this disk, DOS w-}ould be unable to find any file after DUP.SYS, and the DOC program couldn't run. The reason is simple. VTOCKEY does no-}t rebuild a VTOC file-by-file, but as a total of all filespaces. If a file has been deleted, VTOCKEY doesn't know the locati-}on it has been deleted from: it only knows there is that much more available space on the disk. Now look at the displays ca-}refully. In the "active" display you can see that there are a number of out-of-place characters sitting by themselves within-} a long line of hearts--which means there are a number of free sectors hiding back there among the used sectors. These are t-}he spaces once occupied by a file or files which have been deleted, and where nothing new has been added to refill the space.-} What follows now is Law: IF DELETED FILESPACE APPEARS IN A VTOC DISPLAY, CANNOT REBUI-}LD THAT VTOC. YOU MUST FIRST TEMPORARILY REFILL THE DELETED FILESPACE. So simply fill the disused sp-}aces by SAVEing a temporary file or files large enough to use up that much space--add more if you wish, but never less. Your-} new file can be permanent or temporary, just so you can use VTOCKEY on this particular VTOC, this particular time. Let-}'s do that here. Hit , and go to DOS. Use Option O to copy the DOC.COM file on Side Two to Side One. Now reRUN the-} VTOCKEY program, and take a look at the two Sector 360 displays again. There are no more buried spaces hiding in the hearts-}, and the two displays look exactly the same. If they were not the same at this point, you could be fairly sure that now the-} rebuilt VTOC is the true one, while the active VTOC is wrong, and should be replaced. And in this case, option " -}" would tell you the same.------------------END------------------e replaced. And in this case, option " ,K                                                                                                                                                                                         ::::::::::::::::::::::::::::::::::::